Zum Hauptinhalt springen

Web-Service API - Beispiel: Beleg weiterverarbeiten

Als Beispiel verarbeiten wir einen Wareneingang in eine WE-Kalkulation.

Zunächst müssen wir die Methode ForwardReceipt aufrufen.

/REST/ForwardReceipt{ "Ticket": "[Ticket]", "TrimResponse": 0, "Data": { "ForwardData": { "CreateReceiptData": { "IgnoreCallbacks": true }, "CreateReceiptItemsFromExistingItemsData": { "IgnoreCallbacks": true }, "IgnoreCallbacks": true }, "OnlyTakeoverAvailableQuantity": true, "OriginReceipts": [ { "ReceiptI3D": 23302, "ReceiptKind": 8 } ], "ReceiptKind": 18, "TakeoverOptions": 1 }}

EigenschaftBeschreibung
ForwardDataDie Objekte müssen hier zugewiesen werden. Wenn wir die Eigenschaft IgnoreCallbacks auf True setzen, vereinfachen wir uns den Vorgang.
OnlyTakeoverAvailableQuantityEs wird nur die noch nicht weiterverarbeitete Stückzahl übernommen.
OriginReceiptsEnthält die Belege die weiterverarbeitet werden sollen. In unserem Beispiel wird ein Wareneingang (ReceiptKind=8) mit der I3D 23302 weiterverarbeitet. Durch die optionale Liste ReceiptItemI3Ds können direkt die Positionen festgelegt werden, die weiterverarbeitet werden sollen.
ReceiptKindGibt an in welche Belegart weiterverarbeitet werden soll. In unserem Beispiel WE-Kalkulation (18).
TakeoverOptions0 = Kopie
1 = per Referenz

Wenn der Vorgang erfolgreich war, erhalten wir ein Objekt von dem gewünschten Typen zurück. In unserem Beispiel ReceiptSupplierInvoiceDTO.

Anschließend können wir nach belieben das Objekt bearbeiten. Das Objekt wird an die Methode SaveReceipt zum finalen Speichern übergeben.

/REST/SaveReceipt{ "Ticket": "[Ticket]", "TrimResponse": 0, "Data": { "AutoLockIfNewReceipt": false, "Receipt": {RECEIPT DATA}, "SaveData": { "IgnoreCallbacks": true } }}

Auch bei dieser Methode ist es wichtig dass SaveData ein Objekt zugewiesen wird.